Method and apparatus for reducing memory current leakage a mobile device

ABSTRACT

A processing system includes a processor ( 20 ) having an idle mode node for generating an idle mode signal indicating whether the processor is in an idle mode and a memory ( 22 ) having a data retention node for receiving a data retention mode signal. The memory includes circuitry for placing the memory in a low power state responsive to the data retention mode signal. The idle mode signal drives the data retention node, such that the memory is placed in the low power state when the processor is in idle mode.

CROSS REFERENCE TO RELATED APPLICATIONS

Not Applicable

STATEMENT OF FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT

Not Applicable

BACKGROUND OF THE INVENTION

1. Technical Field

This invention relates in general to electronic circuits and, more particularly, to a method and apparatus for reducing memory leakage in an electronic circuit.

2. Description of the Related Art

Over the last ten years, the popularity of mobile devices, including wireless telephones and personal digital assistants, has grown dramatically. For many users of mobile devices, power consumption is an extremely important factor, because such devices operate with a relatively small battery. It is desirable to maximize the battery life in these systems, since it is inconvenient to recharge or replace the batteries after short intervals.

One method to reduce power consumption involves placing various components in a low power state during periods where they are not in use. In some cases, a processing device, such as a general purpose processor or digital signal processor (DSP) can be placed in a low power state or completely powered down after storing its internal data to a non-volatile memory or a powered memory. High-speed random access memory (RAM), however, can not be turned off completely and still retain its data; in order to reduce power and retain data, it may be placed in a “data retention mode”. In data retention mode, data in the memory remains intact, but the RAM cannot be accessed. In a typical data retention mode, the supply voltage, Vcc, to the memory is reduced to decrease current leakage.

Many processing devices, such as DSPs, have an internal RAM. When updating a DSP architecture to take advantage of an internal RAM memory with a data retention mode, several approaches have been developed to determine time periods in which to place a memory in data retention mode, based on the operation of an associated processing core. Existing solutions are limited to optimization of the power consumption through complex external hardware or through complicated software. Such solutions add greatly to the cost of development and complicate the final design of a DSP.

Therefore, a need has arisen for a simplified method and apparatus for reducing current leakage in a memory using data retention mode.

BRIEF SUMMARY OF THE INVENTION

In the present invention, a processing system includes a processor (20) having an idle mode node for generating an idle mode signal indicating whether the processor is in an idle mode and a memory (22) having a data retention node for receiving a data retention mode signal. The memory includes circuitry for placing the memory in a low power state responsive to the data retention mode signal. The idle mode signal drives the data retention node, such that the memory is placed in the low power state when the processor is in idle mode.

The present invention provides significant advantages over the prior art. First, the power retention mode can be supported without any code modification in the processor. Particularly in the mobile phone technology, support for legacy software is critical, since the software tuning effort is greater than adding gates in an ASIC. Second, the power savings attributable to the retention mode of the memory are optimized; the memory is place in power retention mode whenever the processor is placed in idle mode.

In a second embodiment of the invention, the memory can be placed in data retention mode responsive to which of several idle modes is selected. Consequently, the wake-up latencies of the memory are tunable.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

For a more complete understanding of the present invention, and the advantages thereof, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, in which:

FIG. 1 a illustrates a block diagram of a prior art processing system using a processor and memory to reduce power consumption through a RAM with a data retention mode;

FIG. 1 b illustrates a timing diagram showing the initiation of the data retention mode in the prior art circuit of FIG. 1 a;

FIG. 2 a illustrates a block diagram of a processing system using a processor and memory with enhance power consumption reduction;

FIG. 2 b illustrates a timing diagram showing the initiation of the data retention mode in the prior art circuit of FIG. 2 a;

FIG. 2 c illustrates a decoder for a multiple bit idle mode code;

FIG. 3 illustrates a block diagram of a mobile phone using the processing system of FIG. 2 a.

DETAILED DESCRIPTION OF THE INVENTION

The present invention is best understood in relation to FIGS. 1-3 of the drawings, like numerals being used for like elements of the various drawings.

FIG. 1 a illustrates a simplified block diagram of prior art processing system 8 having a processing core 10 and associated internal memory 12. Logic 14 controls the data retention mode of the memory 12. The processing core 10 is coupled to the memory 12 in a normal fashion through data and address buses 13. Logic 14 monitors the activity of the processing core 10. When a long idle period is detected, logic 14 provides a signal to the retention node of the RAM 12 that causes the RAM 12 to enter a low voltage state, in which the contents of the memory is retained. In this low voltage state, data cannot be written to nor read from the RAM 12. Logic 12 can be implemented using software or hardware.

FIG. 1 b illustrates a timing diagram showing periods of activity and inactivity, along with a retention control signal to the RAM 12. As shown, the logic 14 waits until the processing core activity has ceased for a sufficient time before placing the RAM 12 in the data retention state (in the illustrated embodiment, the retention state in entered when the RAM data retention node is pulled low).

The method of determining the time to enter data retention mode can be simple or complex. A simple method would enter retention mode after a predetermined time period has expired since the last processing core activity. A more complex method would vary the time from the last processing core activity based on the extent of the preceding activity.

In any case, adapting a processing core 10 of a DSP to make use of a memory with a retention node requires reprogramming the DSP. This can significantly increase the cost of the design.

In the embodiment shown in FIGS. 2 a and 2 b, a DSP 18 has a processing core 20 is configured to operate the retention node of a memory 20 without any additional code or hardware and with improved energy savings over the prior art. As can be seen in FIG. 2 a, processing core 20 is coupled to the RAM 22 in a normal fashion using data and address buses 24. An idle mode node of the processing core 20 is coupled directly to the data retention mode node of memory 22.

Accordingly, as shown in FIG. 2 b, the RAM's data retention node is pulled low whenever the active-low signal at the idle mode node ({overscore (DSP idle mode)}) is pulled low. If needed for a given design, an inverter can be placed between the processing core idle mode node and the data retention mode node, such that the RAM 22 is placed in data retention mode when the processing core 20 is in idle mode.

For the TEXAS INSTRUMENTS TMS320C54x family of DSP processors, a task scheduler enables an idle mode when there are no tasks to run. The task scheduler executes one of the several “idle mode” instructions of the C54x. There are three idle modes, activated by the IDLE1, IDLE2, and IDLE3 instructions. In these modes, the TMS320C54x devices enter a dormant state and dissipate considerably less power than in normal operation. The IDLE1 instruction is used to shut down the processing core 20 (i.e., stop clock cycles to the processing core). The IDLE2 instruction is used to shut down the processing core 10 and on-chip peripherals (not shown). The IDLE3 instruction is used to shut down the DSP 18 completely. This instruction stops the PLL circuitry as well as the processing core 20 and peripherals.

Each idle mode instruction generates a two-bit idle mode code to be placed on two nodes in the processing core. For purposes of illustration, the codes are “01” for an IDLE1 instruction, “10” for an IDLE2 instruction and “11” for an IDLE1 instruction. In an embodiment of a decoder 28 shown in FIG. 2 c, any or all of the idle mode instructions can cause an active idle mode signal. The two-bit idle mode code selects either a “0” or a “1” to be passed to the RAM data retention pin.

The task scheduler chooses the right idle mode instruction based on the anticipated tasks to do and maximum wake-up time allowed, as shown by the “processing load” signal in FIG. 2 c. The processing load signal determines which idle mode(s) will cause {overscore (DSP idle mode)} to be pulled low (active) and place the memory 22 in data retention mode. For example, if the processing load signal is “11”, then any of the three idle modes will cause {overscore (DSP idle mode)} to be set to “0”. If the processing load signal is “10”, only the IDLE2 and IDLE3 instructions will set DSP idle mode to “0”. If the processing load signal is “01”, only the IDLE instruction will set {overscore (DSP idle mode)} to zero.

Since waking up a RAM introduces some small delays prior to accessing the RAM, the decoding logic 28 can be configured to optimizing data retention mode based on processing load. This could be used in a mobile phone application, for example, to set the fastest wakeup mode (processing mode equals “01”) while speech communication processing is being performed, while the greatest power saving mode (processing mode equals “11”) could be used while the phone is in a paging mode.

This aspect of the invention provides the advantage that the memory can be placed in data retention mode responsive to which of several idle modes is selected. The greatest power savings can be achieved when all idle modes are selected, while a faster response can be achieved by placing the RAM in data retention mode when only the deepest idle mode(s) is selected.

Whenever the task scheduler wakes up the processing core from idle mode, the memory is returned to normal operation.

Thus, as is readily apparent by comparing FIGS. 1 b and 2 b, using the embodiment of FIG. 2 a greatly increases the time in which the RAM 10 is in retention mode. Additionally, the support for retention mode is created without any modification of existing software.

The additional time in idle mode should greatly reduce power leakage by the memory 22, especially in circuits using smaller geometries. In mobile phone applications, such as GSM DRX5 phones, the DSP inactivity approaches 99.9%. Often, the only processing is periodic processing of network information while the phone is in standby. For a GSM phone in standby mode, the DSP awakes every 5 milliseconds to determine if there is call to be started from the network. If there is, the phone awakes (the phone awakes also if the user is using the keypad or other interfaces). If there is not a call, however, the DSP returns to sleep after is processing is complete, which takes only a small fraction of the 5 millisecond cycle. In such an application, the present invention allows the RAM to enter data retention mode with the DSP, greatly reducing the memory leakage.

The embodiment shown in FIG. 2 allows the RAM 22 to be in data retention mode for almost all of the inactive periods of the processing core 20. Accordingly, the battery life of the mobile phone is greatly increased.

FIG. 3 illustrates a block diagram of a mobile phone using the present invention. Input/output devices 32 (such as a keypad, microphone and speaker) are coupled to the analog baseband circuitry 34. Analog baseband circuitry includes a processing core 20 or other processor having an idle mode output signal node (IM) and a RAM 22 having a data retention input signal node (DR). The idle mode output signal node of processing core 20 is coupled to the data retention input signal node of the RAM 22, and the two devices are coupled by data and address buses 24. The analog baseband circuitry 34 may include other hardware, such a an audio codec. The analog baseband circuitry is coupled to radio frequency (RF) circuitry 36. The input/output devices 32, analog baseband circuitry 34 and RF circuitry 36 are powered by power management circuitry 38.

In operation, the RAM 22 of the analog baseband circuitry 34 is placed in data retention mode each time that the idle mode output signal node is active. Accordingly, the power consumption of the device can be significantly reduced without any code modification in the processing core 20.

While the application has been described in connection with a DSP, it could be used with other types of processors as well. Further, the RAM could be any type of memory, including dynamic random access memory and static random access memory.

Although the Detailed Description of the invention has been directed to certain exemplary embodiments, various modifications of these embodiments, as well as alternative embodiments, will be suggested to those skilled in the art. The invention encompasses any modifications or alternative embodiments that fall within the scope of the Claims. 

1. A processing system comprising: a processor having an idle mode node for generating an idle mode signal indicating whether the processor is in an idle mode; a memory having a data retention node for receiving a data retention mode signal, and circuitry for placing the memory in a low power state responsive to the data retention mode signal; wherein the idle mode signal drives the data retention node.
 2. The processing system of claim 1 wherein the processor has a plurality of idle mode states, and idle mode signal indicates which idle mode state is active.
 3. The processing system of claim 2 wherein said processor includes decoding logic for driving said memory into a low power state responsive to selected idle mode states.
 4. The processing system of claim 1 wherein the processor is a processing core of a digital signal processor and the memory is an internal memory of the digital signal processor.
 5. The processing system of claim 1 wherein the memory is a static random access memory.
 6. The processing system of claim 1 wherein the memory is a dynamic random access memory.
 7. The processing system of claim 1 wherein said processor and memory are further coupled by address and data buses.
 8. A mobile communications device comprising: a processor having an idle mode node for generating an idle mode signal indicating whether the processor is in an idle mode; a memory having a data retention node for receiving a data retention mode signal, and circuitry for placing the memory in a low power state responsive to the data retention mode signal; wherein the idle mode signal drives the data retention node, such that the memory is placed in the low power state when the processor is in idle mode.
 9. The mobile communication device of claim 8 wherein the processor has a plurality of idle mode states, and idle mode signal indicates which idle mode state is active.
 10. The mobile communication device of claim 9 wherein said processor includes decoding logic for driving said memory into a low power state responsive to selected idle mode states.
 11. The mobile communication device of claim 8 and further comprising radio frequency circuitry coupled to said processor and memory.
 12. The mobile communication device of claim 8 and further comprising input devices coupled to said processor and memory.
 13. The mobile communication device of claim 8 wherein the processor is a processing core of a digital signal processor and the memory is an internal memory of the digital signal processor.
 14. The mobile communication device of claim 8 wherein the memory is a static random access memory.
 15. The mobile communication device of claim 8 wherein the memory is a dynamic random access memory.
 16. The mobile communication device of claim 8 wherein said processor and memory are further coupled by address and data buses.
 17. A method of controlling data retention mode in a memory, comprising the steps of: generating an idle mode signal in a processor, indicating whether the processor is in an idle mode; and driving a data retention mode node in the memory with the idle mode signal.
 18. The method of claim 17 wherein the processor has a plurality of idle mode states and the generating step comprises the step of indicating which idle mode state is active.
 19. The method of claim 18 wherein said driving step comprises the step of driving the memory into a low power state responsive to selected idle mode states.
 20. The method of claim 17 wherein said driving step comprises the step of directly connecting the idle mode signal to the data retention mode node.
 21. The method of claim 17 wherein said driving step comprises the step of connecting an inverted idle mode signal to the data retention mode node. 